package com.etalk.crm.dao;

import com.etalk.crm.pojo.NewMainBean;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author Jordan
 */
@Mapper
public interface AdminNewMainMapper {

    /**
     * 查询首页待约中教课学员数据
     * @param revisitId 客户属性id
     * @param sscId ssc id
     * @return
     */
    List<NewMainBean> selectNotBookedChineseCourseList(@Param("revisitId") Integer revisitId, @Param("sscId") Integer sscId);

    /**
     * 查询未完成阶段检测报告学员
     * @param sscId ssc id
     * @return
     */
    List<NewMainBean> selectLtNotFeedbackList(@Param("sscId") Integer sscId);

    /**
     * 查询学员到期订单
     * @param sscId ssc id
     * @param ccId cc id
     * @param days 到期天数(30或60天内)
     * @return
     */
    List<NewMainBean> selectStudentOrderInfo(@Param("sscId") Integer sscId,@Param("ccId") Integer ccId,@Param("days") Integer days);

    /**
     * 老学员跟进情况
     * @param sscId ssc id
     * @param ccId cc id
     * @param followDays 跟进天数
     * @return
     */
    List<NewMainBean> selectOcOldStudentFollow(@Param("sscId") Integer sscId,@Param("ccId") Integer ccId,@Param("followDays") Integer followDays);

    /**
     * 查询各客户属性学员
     * @param ccId cc id
     * @param state 客户属性
     * @return
     */
    List<NewMainBean> selectPotentialStudent(@Param("ccId") Integer ccId,@Param("state") Integer state);

    /**
     * 5天未约课学员
     * @param sscId ssc id
     * @param ccId cc id
     * @return
     */
    List<NewMainBean> selectInactiveLessons(@Param("sscId") Integer sscId,@Param("ccId") Integer ccId);

    /**
     * 学员连续旷课3次以上
     * @param sscId ssc id
     * @param ccId cc id
     * @return
     */
    List<NewMainBean> selectAbsenteeismLessonList(@Param("sscId") Integer sscId,@Param("ccId") Integer ccId);

    /**
     * 查询管理者创建的提醒(未完成)
     * @param ccId cc id
     * @param searchDate 提醒日期
     * @return
     */
    List<NewMainBean> selectTrackRemindList(@Param("ccId") List<Integer> ccId,@Param("searchDate")String searchDate);

}
